import request from '../../utils/request'

Page({

  /**
   * 页面的初始数据
   */
  data: {
    phoneNumber: '',
    // 是否开启倒计时
    isCountDown: false,
    countNum: 60,
    vcode: ''
  },
  getPhoneNumber(event) {
    this.setData({
      phoneNumber: event.detail.value
    })
  },
  getVcode(event) {
    this.setData({
      vcode: event.detail.value
    })
  },
  // 倒计时并获取验证码
  countDownGetVcode() {
    // 如果倒计时中，再点击不响应
    if (this.data.isCountDown) {
      return
    }
    // TODO验证手机号码的输入的格式,提示用正则表达式
    if (!this.data.phoneNumber) {
      wx.showToast({
        title: '请输入正确的手机号码',
        icon: 'none'
      })
      return
    }

    // 开启倒计时
    this.setData({
      isCountDown: true
    })

    // 开启倒计时,每一秒减1
    let timer = setInterval(() => {
      // 如果在定时器减1之前判断，数字为1时，就改变文字; 否则-1
      if (this.data.countNum === 1) {
        // 倒计时结束,清除定时器
        clearInterval(timer)

        this.setData({
          isCountDown: false,
          countNum: 60
        })
        return
      }
      this.setData({
        countNum: this.data.countNum - 1
      })
    }, 1000)

    // 请求验证码
    this.queryVcode()
  },
  // 请求验证码
  async queryVcode() {
    let data = await request({
      url: '/api/user/vcode?phone=' + this.data.phoneNumber
    })
    wx.showToast({
      // title只能是字符串
      title: data.vcode + '',
      icon: 'none',
      // 设置提示长一些的时间
      duration: 5000
    })
  },
  // 手机号码登录
  async phoneLogin() {
    let data = await request({
      url: '/api/user/login',
      method: 'POST',
      data: {
        phone: this.data.phoneNumber,
        vcode: this.data.vcode
      }
    })
    // 存token
    wx.setStorageSync('token', data.token)
    wx.showToast({
      title: '手机号登录成功！',
      success:()=>{
        setTimeout(()=>{
          //跳转我的页面
          wx.switchTab({
            url: '/pages/my/my',
          })
        },1500)
      }
    })
  },

  /**
   * 生命周期函数--监听页面加载
   */
  onLoad: function (options) {

  },

  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady: function () {

  },

  /**
   * 生命周期函数--监听页面显示
   */
  onShow: function () {

  },

  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide: function () {

  },

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload: function () {

  },

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh: function () {

  },

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom: function () {

  },

  /**
   * 用户点击右上角分享
   */
  onShareAppMessage: function () {

  }
})